home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / catD / bp_mapin.z / bp_mapin
Encoding:
Text File  |  2002-10-03  |  3.8 KB  |  66 lines

  1.  
  2.  
  3.  
  4. bbbbpppp____mmmmaaaappppiiiinnnn((((DDDD3333))))                                                      bbbbpppp____mmmmaaaappppiiiinnnn((((DDDD3333))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      _bbbb_pppp______mmmm_aaaa_pppp_iiii_nnnn - allocate virtual address space for buffer page list
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_tttt_yyyy_pppp_eeee_ssss_...._hhhh_>>>>
  13.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_bbbb_uuuu_ffff_...._hhhh_>>>>
  14.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_dddd_dddd_iiii_...._hhhh_>>>>
  15.      _vvvv_oooo_iiii_dddd _bbbb_pppp______mmmm_aaaa_pppp_iiii_nnnn_((((_ssss_tttt_rrrr_uuuu_cccc_tttt _bbbb_uuuu_ffff______tttt _****_b_p_))))_;;;;
  16.  
  17.    AAAArrrrgggguuuummmmeeeennnnttttssss
  18.      _b_p        Pointer to the buffer header structure.
  19.  
  20. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  21.      The _bbbb_pppp______mmmm_aaaa_pppp_iiii_nnnn function is used to map virtual address space to a page list
  22.      maintained by the buffer header [see _bbbb_uuuu_ffff(D4)] during a paged-I/O request.
  23.  
  24.    RRRReeeettttuuuurrrrnnnn VVVVaaaalllluuuueeeessss
  25.      None
  26.  
  27. UUUUSSSSAAAAGGGGEEEE
  28.      A paged-I/O request is identified by the _BBBB______PPPP_AAAA_GGGG_EEEE_IIII_OOOO flag being set in the
  29.      _bbbb______ffff_llll_aaaa_gggg_ssss field of the buffer header passed to a driver's _ssss_tttt_rrrr_aaaa_tttt_eeee_gggg_yyyy(D2)
  30.      routine.
  31.  
  32.      _bbbb_pppp______mmmm_aaaa_pppp_iiii_nnnn allocates system virtual address space, maps that space to the
  33.      page list, and returns the new virtual address in the _bbbb______uuuu_nnnn_...._bbbb______aaaa_dddd_dddd_rrrr field
  34.      of the _bbbb_uuuu_ffff structure.  This address is the virtual address of the start
  35.      of the page mappings, plus the offset given by the original value of _bbbb_pppp_----
  36.      _>>>>_bbbb______uuuu_nnnn_...._bbbb______aaaa_dddd_dddd_rrrr.  After the I/O completes, the virtual address space can be
  37.      deallocated using the _bbbb_pppp______mmmm_aaaa_pppp_oooo_uuuu_tttt(D3) function.
  38.  
  39.    LLLLeeeevvvveeeellll
  40.      Base only.
  41.  
  42.    SSSSyyyynnnncccchhhhrrrroooonnnniiiizzzzaaaattttiiiioooonnnn CCCCoooonnnnssssttttrrrraaaaiiiinnnnttttssss
  43.      This routine may sleep if virtual space is not immediately available.
  44.  
  45.      Driver-defined basic locks and read/write locks may not be held across
  46.      calls to this function.
  47.  
  48.      Driver-defined sleep locks may be held across calls to this function.
  49.  
  50. RRRREEEEFFFFEEEERRRREEEENNNNCCCCEEEESSSS
  51.      _bbbb_pppp______mmmm_aaaa_pppp_oooo_uuuu_tttt(D3), _bbbb_uuuu_ffff(D4), _ssss_tttt_rrrr_aaaa_tttt_eeee_gggg_yyyy(D2)
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.                                                                         PPPPaaaaggggeeee 1111
  62.  
  63.  
  64.  
  65.